home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #2 / Amiga Plus CD - 1995 - No. 2.iso / internet / faq / englisch / sgi-inventor < prev    next >
Encoding:
Text File  |  1995-04-11  |  17.0 KB  |  425 lines

  1. Archive-name: sgi/faq/inventor
  2. Last-modified: Sat Dec 17 12:14:17 CST 1994
  3.  
  4.     SGI inventor Frequently Asked Questions (FAQ)
  5.  
  6. This is one of the Silicon Graphics FAQ series, which consists of:
  7.  
  8.     SGI admin FAQ - IRIX system administration
  9.     SGI apps FAQ - Applications and miscellaneous programming
  10.     SGI audio FAQ - Audio applications and programming
  11.     SGI graphics FAQ - Graphics and user environment customization
  12.     SGI hardware FAQ - Hardware
  13.     SGI impressario FAQ - IRIS Impressario
  14.     SGI inventor FAQ - IRIS Inventor
  15.     SGI misc FAQ - Introduction & miscellaneous information
  16.     SGI movie FAQ - Movies
  17.     SGI performer FAQ - IRIS Performer
  18.     SGI pointer FAQ - Pointer to the other FAQs
  19.  
  20. Read the misc FAQ for information about the FAQs themselves.  Each FAQ
  21. is posted to comp.sys.sgi.misc and to the news.answers and comp.answers
  22. newsgroups (whose purpose is to store FAQs) twice per month.  If you
  23. can't find one of the FAQs with your news program, you can get it by
  24. anonymous FTP from one of these sites:
  25.  
  26.     viz.tamu.edu:/pub/sgi/faq/
  27.     rtfm.mit.edu:/pub/usenet/news.answers/sgi/faq/
  28.     ftp.uu.net:/usenet/news.answers/sgi/faq/
  29.  
  30. Note that rtfm.mit.edu is home to many other FAQs and informational
  31. documents, and is a good place to look if you can't find an answer here.
  32. If you can't use FTP, send mail to mail-server@rtfm.mit.edu with the
  33. word 'help' on a line by itself in the text, and it will send you a
  34. document describing how to get files from rtfm.mit.edu by mail. Send the
  35. command 'send usenet/news.answers/sgi/faq/misc' to get the SGI misc FAQ,
  36. and similarly for the other FAQs. Finally, the FAQs are on the World
  37. Wide Web at
  38.  
  39.     http://www.cis.ohio-state.edu/hypertext/faq/usenet/sgi/top.html
  40.  
  41. The SGI FAQs are freely distributable and we encourage wide circulation.
  42. You MUST keep the FAQs intact, including headers and this notice.  The
  43. contents are accurate as far as we know, but the usual disclaimers
  44. apply. (In particular, copies of the SGI FAQs published on paper or
  45. CD-ROM are certain to be out of date!) Please send additions and changes
  46. to sgi-faq@viz.tamu.edu.
  47.  
  48. Topics covered in this FAQ:
  49. ---------------------------
  50.    -1- What is Open Inventor?
  51.    -2- What is IRIS Inventor?
  52.    -3- Is Inventor a format for 3D data?
  53.    -4- Can I use Inventor to create 3D objects?
  54.    -5- Is Inventor a user interface toolkit?
  55.    -6- Is there a performance cost using a software layer on top of GL?
  56.    -7- Does Inventor require C++?
  57.    -8- Does Inventor work with the GNU C++ compiler?
  58.    -9- Does Inventor have a Fortran or Ada API?
  59.   -10- Where can I get detailed, technical information on Inventor?
  60.   -11- How much does Inventor cost?
  61.   -12- How can I order Inventor software and/or documentation?
  62.   -13- How can I learn Inventor Programming?
  63.   -14- What version of Open Inventor runs on which version of IRIX?
  64.   -15- Why isn't Open Inventor available on the VGX/PI/GTX or GT?
  65.   -16- What new features are in Open Inventor that weren't in IRIS
  66.        Inventor?
  67.   -17- Will my IRIS Inventor programs stop working if I install Open
  68.        Inventor?
  69.   -18- How hard is it to port from IRIS Inventor to Open Inventor?
  70.   -19- When I compile my Inventor program, I get an error in
  71.        SoDebugError.h.
  72.   -20- What version of IRIS Inventor runs on which version of IRIX?
  73.   -21- Will I be automatically upgraded to Open Inventor if I have IRIS
  74.        Inventor?
  75.   -22- Why do I get errors compiling the Inventor sample programs?
  76.  
  77. ----------------------------------------------------------------------
  78.  
  79. Subject:    -1- What is Open Inventor?
  80. Date: 30 Apr 94 15:45:00 CDT
  81.  
  82.   Open Inventor is an object-oriented 3D toolkit offering a
  83.   comprehensive solution to interactive graphics programming problems.
  84.   It presents a programming model based on a 3D scene database that
  85.   dramatically simplifies graphics programming. It includes a rich set
  86.   of objects such as cubes, polygons, text, materials, cameras, lights,
  87.   trackballs, handle boxes, 3D viewers, and editors that speed up your
  88.   programming time and extend your 3D programming capabilities.
  89.  
  90.   Open Inventor: 
  91.       o is built on top of OpenGL 
  92.       o defines a standard file format for 3D data interchange 
  93.       o introduces a simple event model for 3D interaction 
  94.       o provides animation objects called Engines 
  95.       o provides high performance object picking 
  96.       o is window system and platform independent 
  97.       o supports PostScript printing 
  98.       o encourages programmers to create new customized objects 
  99.       o is fun to use 
  100.  
  101. ------------------------------
  102.  
  103. Subject:    -2- What is IRIS Inventor?
  104. Date: 30 Apr 94 15:45:00 CDT
  105.  
  106.   IRIS Inventor was the first release of Inventor; it is also known as
  107.   Inventor 1.0 (Open Inventor is Inventor 2.0). It is built on top of
  108.   IRIS GL rather than OpenGL, and has fewer features.
  109.  
  110. ------------------------------
  111.  
  112. Subject:    -3- Is Inventor a format for 3D data?
  113. Date: 30 Apr 94 15:45:00 CDT
  114.  
  115.   Inventor defines a powerful, extensible format for 3D objects and
  116.   scenes.  The Inventor format is the standard for 3D objects on
  117.   Silicon Graphics machines, and may become the standard for all
  118.   machines.
  119.  
  120.   However, Inventor is more than a 3D object file format; it is a
  121.   complete toolkit for writing interactive, 3D applications.
  122.  
  123. ------------------------------
  124.  
  125. Subject:    -4- Can I use Inventor to create 3D objects?
  126. Date: 30 Apr 94 15:45:00 CDT
  127.  
  128.   Inventor is for programmers writing 3D applications, and does not
  129.   directly provide any way for users to create 3D objects. Several
  130.   Inventor applications have been written that create 3D objects.
  131.  
  132.   Showcase 3.0, which is bundled with IRIX, is a fairly simple
  133.   example.  A much more sophisticated modeller called Movieola built on
  134.   top of Inventor is available from Radiance Software International.
  135.  
  136. ------------------------------
  137.  
  138. Subject:    -5- Is Inventor a user interface toolkit?
  139. Date: 30 Apr 94 15:45:00 CDT
  140.  
  141.   Yes and no. Inventor contains mostly 3D objects. There is little in
  142.   the way of conventional user interface objects such as buttons,
  143.   dialogs, and menus.  However, Inventor includes a full-fledged event
  144.   model, a framework designed for 2D or 3D user interaction, and some
  145.   manipulator objects for 3D user interface building. Note that the
  146.   Inventor Xt Component and Utility Library includes some traditional
  147.   2D user interface widgets.
  148.  
  149. ------------------------------
  150.  
  151. Subject:    -6- Is there a performance cost using a software layer on
  152.                 top of GL?
  153. Date: 30 Apr 94 15:45:00 CDT
  154.  
  155.   Sometimes. Note that few GL programs achieve peak graphics
  156.   performance. This is because most applications have natural
  157.   application overhead, and also because many programmers lack a
  158.   thorough understanding of the details and eccentricities of GL. If
  159.   you are writing a simple display-only, immediate-mode GL program,
  160.   then it will run faster using straight GL, but not much. However, if
  161.   your program has scene traversal, interactivity, picking, bounding
  162.   box calculations, and other object space tasks, then Inventor will
  163.   perform better for you. This is because Inventor is specially tuned
  164.   to make optimal use of GL on each SGI machine. Furthermore, Inventor
  165.   supports render caching which results in peak GL performance in most
  166.   cases.
  167.  
  168.   We have found that in many cases, Inventor programs run FASTER than
  169.   the original GL program, and that the programmer productivity
  170.   increases easily outweigh the overhead of the toolkit.
  171.  
  172. ------------------------------
  173.  
  174. Subject:    -7- Does Inventor require C++?
  175. Date: 30 Apr 94 15:45:00 CDT
  176.  
  177.   No. You can use the C API and never see or use C++. However,
  178.   subclassing to extend the toolkit does require C++.
  179.  
  180. ------------------------------
  181.  
  182. Subject:    -8- Does Inventor work with the GNU C++ compiler?
  183. Date: 30 Apr 94 15:45:00 CDT
  184.  
  185.   No, Inventor requires SGI's C++ compiler. The GNU C++ compiler and
  186.   SGI's C++ compiler produce incompatible code, and Silicon Graphics
  187.   does not ship an Inventor library compatible with GNU C++.
  188.  
  189. ------------------------------
  190.  
  191. Subject:    -9- Does Inventor have a Fortran or Ada API?
  192. Date: 30 Apr 94 15:45:00 CDT
  193.  
  194.   No. 
  195.  
  196. ------------------------------
  197.  
  198. Subject:   -10- Where can I get detailed, technical information on
  199.                 Inventor?
  200. Date: 30 Apr 94 15:45:00 CDT
  201.  
  202.   The Inventor Mentor, written by Josie Wernecke, is published by
  203.   Addison-Wesley and is available in technical bookstores (ISBN
  204.   0-201-62495-8).
  205.  
  206. ------------------------------
  207.  
  208. Subject:   -11- How much does Inventor cost?
  209. Date: 30 Apr 94 15:45:00 CDT
  210.  
  211.   If you want to write Inventor applications on SGI machines, you need
  212.   the Inventor developer's option. This option costs $995 for the Open
  213.   Inventor release and $495 for the IRIS Inventor releases. There are
  214.   no royalties for distributing applications based on Inventor.
  215.  
  216.   Every SGI machine is shipped with the libraries needed to run
  217.   Inventor applications (they are part of the inventor_eoe installation
  218.   subsystem); users that want to run Inventor applications on SGI
  219.   machines do not need to pay anything extra.
  220.  
  221. ------------------------------
  222.  
  223. Subject:   -12- How can I order Inventor software and/or documentation?
  224. Date: 30 Apr 94 15:45:00 CDT
  225.  
  226.   Call your local SGI sales representative or 1-800-800-7441 to order.
  227.  
  228. ------------------------------
  229.  
  230. Subject:   -13- How can I learn Inventor Programming?
  231. Date: 30 Apr 94 15:45:00 CDT
  232.  
  233.   SGI Technical Education offers a week-long course in Inventor
  234.   Programming.  Call 1-800-800-4SGI to sign up.
  235.  
  236. ------------------------------
  237.  
  238. Subject:   -14- What version of Open Inventor runs on which version of
  239.                 IRIX?
  240. Date: 30 Apr 94 15:45:00 CDT
  241.  
  242.   Inventor 2.0 runs on IRIX 5.2 and higher only. 
  243.  
  244. ------------------------------
  245.  
  246. Subject:   -15- Why isn't Open Inventor available on the VGX/PI/GTX or
  247.                 GT?
  248. Date: 30 Apr 94 15:45:00 CDT
  249.  
  250.   Open Inventor requires OpenGL, which is not currently available on
  251.   older SGI machines.
  252.  
  253. ------------------------------
  254.  
  255. Subject:   -16- What new features are in Open Inventor that weren't in
  256.                 IRIS Inventor?
  257. Date: 30 Apr 94 15:45:00 CDT
  258.  
  259.   Some of the main features that are new with Open Inventor are: 
  260.  
  261.      Open Inventor Licensing
  262.     Open Inventor 2.0 represents the first release of Inventor that
  263.     is licensed to third parties to run on other platforms (e.g.,
  264.     Sun, HP).
  265.      The Inventor Mentor and The Inventor Toolmaker
  266.     Since Open Inventor has been licensed to run on other
  267.     platforms, the programming guides have been published and
  268.     distributed by Addison-Wesley Publishing Company. The books are
  269.     typically available through bookstores that offer a good
  270.     technical book selection. The Inventor Mentor is volume I of
  271.     the programming guide and describes the fundamentals of
  272.     Inventor programming (ISBN 0-201-62495-8). The Inventor
  273.     Toolmaker is volume II and provides advanced information for
  274.     programmers who want to extend Inventor.
  275.      Automatic caching
  276.     Open Inventor supports intelligent, automatic caching on the
  277.     parts of the database that are not changing. Previously,
  278.     caching was either `on' or `off' (set at SoSeparator nodes).
  279.     Inventor 2.0 supports a third setting, `auto'. This
  280.     SIGNIFICANTLY improves performance and simplifies programming.
  281.      Error handling
  282.     Inventor now supports a formal error handling system. Note that
  283.     the API was not affected by this change. All Inventor error
  284.     messages are now posted to an SoError class. The application
  285.     can supply its own error handlers, thus making it possible to
  286.     route error messages to dialogs, as well as stderr or stdout.
  287.     All handlers are called by the SoError::handleError() method.
  288.     When debugging, you can set a breakpoint on this method to stop
  289.     right before an error is handled.
  290.      Geometry primitives and SoCallbackAction
  291.     A new feature has been added to the generic Inventor traversal
  292.     action, SoCallbackAction, that allows for shapes to return
  293.     primitives (triangles, lines, points, normals, texture coords,
  294.     etc.) describing the object.
  295.      Naming
  296.     Nodes, paths, and engines can have names (strings) associated
  297.     with them. There are methods on SoBase::setName() and getName()
  298.     to set/get names. To search for objects by name, see
  299.     SoNode::getByName(), SoPath::getByName(), and
  300.     SoEngine::getByName(). Also, the SoSearchAction can now search
  301.     based on the name.
  302.      OpenGL rendering
  303.     Open Inventor 2.0 uses OpenGL for all rendering; there are no
  304.     calls to Iris GL in Inventor 2.0. If you have written derived
  305.     node classes in 1.0, the Iris GL code must be re-written to
  306.     OpenGL.
  307.      Printing
  308.     Printing has been completely reimplemented using OpenGL
  309.     rendering to an off-screen image. All rendering features can
  310.     now be printed (e.g. textures and transparency).
  311.      Render Culling
  312.     Inventor now supports object level culling to the viewport.
  313.     Culling, like caching, is controlled by SoSeparators.
  314.      Unknown nodes
  315.     Inventor 2.0 reads unrecognized node classes from file and
  316.     attempts to use them. When an unknown class is read, Inventor
  317.     will search for an accompanying DSO file and use it, (uses
  318.     environment variable LD_LIBRARY_PATH to search for file
  319.     classname.so) If none is found, an SoUnknownNode or
  320.     SoUnknownEngine is created and used instead.
  321.  
  322.     Inventor 2.0 also supports a special option for nodes called
  323.     alternateRep. It can store a scene graph composed of standard
  324.     Inventor nodes which will be rendered as a stand-in for your
  325.     unrecognized node. During writing, the node or engine is
  326.     written back out. Note that this mechanism works only with
  327.     Inventor 2.0 files; unrecognized nodes in an Inventor 1.0 file
  328.     will still generate a read error. This mechanism allows user
  329.     subclassed nodes to be exportable, renderable, and re- usable.
  330.      SoEngine
  331.     A new class of objects used for animation and behavior.
  332.     Engines are lightweight objects that are connected between
  333.     nodes, the clock, and other engines to form interesting
  334.     behaviorial objects (e.g. spinning windmill). Engines can be
  335.     written to file along with the 3d scene.
  336.  
  337. ------------------------------
  338.  
  339. Subject:   -17- Will my IRIS Inventor programs stop working if I install
  340.                 Open Inventor?
  341. Date: 30 Apr 94 15:45:00 CDT
  342.  
  343.   No. The Inventor 2.0 run-time system (inventor_eoe) contains a
  344.   complete set of compatibility libraries that will allow existing IRIS
  345.   Inventor applications to continue to work. If necessary, it is
  346.   possible to install both the Inventor 2.0 and Inventor 1.1.2
  347.   development environments on the same machine; see the Inventor 2.0
  348.   release notes for details.
  349.  
  350. ------------------------------
  351.  
  352. Subject:   -18- How hard is it to port from IRIS Inventor to Open
  353.                 Inventor?
  354. Date: 30 Apr 94 15:45:00 CDT
  355.  
  356.   Most Inventor programs will be fairly easy to port. The Inventor 2.0
  357.   release notes contain detailed information on converting your
  358.   application. Most of your porting job will be fixing minor syntax
  359.   changes (e.g. some length() methods were renamed getLength() for
  360.   consistency with the rest of the toolkit) and fixing #include lines
  361.   for files under /usr/include/Inventor that were moved around (e.g.
  362.   all of the Xt components are now under /usr/include/Inventor/Xt).
  363.  
  364.   Inventor programs that contain a lot of IRIS GL code or that made
  365.   extensive use of Inventor subclassing will be more difficult to port,
  366.   since they will have to be ported to OpenGL and since the internal
  367.   structure of Inventor underwent some major changes.
  368.  
  369. ------------------------------
  370.  
  371. Subject:   -19- When I compile my Inventor program, I get an error in
  372.                 SoDebugError.h.
  373. Date: 30 Apr 94 15:45:00 CDT
  374.  
  375.   You, or something you #include, are #include'ing the IRIS GL header
  376.   file (gl/gl.h). It does: "#define WARNING 2", which conflicts with
  377.   the enum value called "WARNING" in SoDebugError. You cannot mix Open
  378.   Inventor with IRIS GL anyway (because you cannot mix OpenGL with IRIS
  379.   GL), so you should fix your program so it doesn't try to #include
  380.   <gl/gl.h> it should use <GL/gl.h> the OpenGL include file.
  381.  
  382. ------------------------------
  383.  
  384. Subject:   -20- What version of IRIS Inventor runs on which version of
  385.                 IRIX?
  386. Date: 30 Apr 94 15:45:00 CDT
  387.  
  388.   IRIX      IRIS Inventor Version
  389.   --------------------------------
  390.   3.3.*   | (Inventor is not available for IRIX 3.*)
  391.   4.0.*   | 1.0.1
  392.   5.0.1   | (bad release... do not use)
  393.   5.1.*   | 1.1.2
  394.   5.2.*   | Open Inventor 2.0 (1.1.2 on VGX/GTX/GT/PI)
  395.  
  396. ------------------------------
  397.  
  398. Subject:   -21- Will I be automatically upgraded to Open Inventor if I
  399.                 have IRIS Inventor?
  400. Date: 30 Apr 94 15:45:00 CDT
  401.  
  402.   Customers with software maintenance contracts that have purchased the
  403.   Inventor 1.0 developer's option will receive the Inventor 2.0
  404.   developer's option when they receive IRIX 5.2.
  405.  
  406. ------------------------------
  407.  
  408. Subject:   -22- Why do I get errors compiling the Inventor sample
  409.                 programs?
  410. Date: 30 Apr 94 15:45:00 CDT
  411.  
  412.   Inventor 1.0.1 requires C++ version 2.*. If you have C++ version 3.*
  413.   installed on your system, you must specify the -v2 flag to compile
  414.   Inventor programs.
  415.  
  416.   Inventor 1.1.2 and Inventor 2.0 work with C++ 3.*.
  417.  
  418. ------------------------------
  419.  
  420. End of sgi/faq/inventor Digest
  421. ******************************
  422. -- 
  423. The SGI FAQ group                                sgi-faq@viz.tamu.edu
  424. Finger us for info on the SGI FAQs, or look in viz.tamu.edu:/pub/sgi.
  425.